<?php
    date_default_timezone_set('Asia/Ho_Chi_Minh');
    error_reporting(E_ALL & ~ E_NOTICE);
    
    // Define base path obtainable throughout the whole application
    defined('BASE_PATH')
        || define('BASE_PATH', realpath(dirname(__FILE__)));
    
    // Define path to application directory
    defined('APPLICATION_PATH')
        || define('APPLICATION_PATH', BASE_PATH . '/application');
        
    // Define application environment
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'development'));
    
    // Define path to cache directory
    define('CACHE_DIR', APPLICATION_PATH . '/cache/');
        
    set_include_path(implode(PATH_SEPARATOR, array(
        realpath(APPLICATION_PATH . '/../library'),
        APPLICATION_PATH . 'modules/admincp/models',
        get_include_path(),
    )));
    
    // Define templates path
    define('PUBLIC_PATH', realpath(dirname(__FILE__)) . '/public');
    
    define('TEMPLATES', '/public/templates');
    
    define('TEMPLATES_PATH', PUBLIC_PATH . '/templates');
    
    /** Zend_Application */
    require_once 'Zend/Application.php';
    
    // Create application, bootstrap, and run
    $application = new Zend_Application(
        APPLICATION_ENV,
        APPLICATION_PATH . '/configs/application.ini'
    );
    
    $application->bootstrap()->run();
